


import React, { Component } from 'react'
import { Card } from 'antd'
//按需加载echarts
import echarts from 'echarts/lib/echarts'
import ReactEcharts from 'echarts-for-react';
//引入柱形图
import 'echarts/lib/chart/line';


class Line extends Component {
    componentWillMounut() {
        ReactEcharts
    }
    getOption = () => {
        let option = {
            xAxis: {
                type: 'category',
                data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
            },
            yAxis: {
                type: 'value'
            },
            series: [{
                data: [820, 932, 901, 934, 1290, 1330, 1320],
                type: 'line'
            },
            {
                data: [320, 532, 931, 834, 290, 330, 2320],
                type: 'line'
            }]
        }
        return option
    }
    getOption_2 = () => {
        let option_2 = {
            xAxis: {
                type: 'category',
                boundaryGap: false,
                data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
            },
            yAxis: {
                type: 'value'
            },
            series: [
                {
                    data: [820, 932, 901, 934, 1290, 1330, 1320],
                    type: 'line',
                    areaStyle: {}   //虚线内是否有阴影
                },
                {
                    data: [320, 532, 931, 834, 290, 330, 2320],
                    type: 'line',
                    areaStyle: {}
                }
            ]
        }
        return option_2
    }
    getOption_3 = () => {
        let option_3 = {
            title: {
                text: '折线图堆叠'
            },
            //提示
            tooltip: {
                trigger: 'axis'
            },
            //图裂
            legend: {
                data: ['邮件营销', '联盟广告', '视频广告', '直接访问', '搜索引擎']
            },
            grid: {
                left: '3%',
                right: '4%',
                bottom: '3%',
                containLabel: true
            },
            toolbox: {
                feature: {
                    saveAsImage: {}
                }
            },
            xAxis: {
                type: 'category',
                boundaryGap: false,
                data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
            },
            yAxis: {
                type: 'value'
            },
            series: [
                {
                    name: '邮件营销',
                    type: 'line',
                    stack: '总量',
                    data: [120, 132, 101, 134, 90, 230, 210]
                },
                {
                    name: '联盟广告',
                    type: 'line',
                    stack: '总量',
                    data: [220, 182, 191, 234, 290, 330, 310]
                },
                {
                    name: '视频广告',
                    type: 'line',
                    stack: '总量',
                    data: [150, 232, 201, 154, 190, 330, 410]
                },
                {
                    name: '直接访问',
                    type: 'line',
                    stack: '总量',
                    data: [320, 332, 301, 334, 390, 330, 320]
                },
                {
                    name: '搜索引擎',
                    type: 'line',
                    stack: '总量',
                    data: [820, 932, 901, 934, 1290, 1330, 1320]
                }
            ]
        }
        return option_3
    }
    render() {
        return (
            <div>
                <Card title="柱形图_1">
                    <ReactEcharts
                        option={this.getOption()}
                        theme="稻城"
                        style={{ height: 500 }}
                    />
                </Card>
                <Card title="柱形图_2">
                    <ReactEcharts
                        option={this.getOption_2()}
                        theme="稻城"
                        style={{ height: 500 }}
                    />
                </Card>
                <Card title="柱形图_3">
                    <ReactEcharts
                        option={this.getOption_3()}
                        theme="稻城"
                        style={{ height: 500 }}
                    />
                </Card>
            </div>
        )
    }
}

export default Line



